<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <script>
        let { log } = console;
// 1)在使用Object.defineProperty()、Object.defineProperties() 或 Object.create() 函数的情况下添加数据属性，writable、enumerable和configurable默认值为false。
// 2)使用对象直接量创建的属性，writable、enumerable和configurable特性默认为true。

        let obj = { name: "szq" };
        // Reflect.defineProperty(obj, "age", {
        //     value: 11,
        //     enumerable: true,
        //     writable: false,
        //     configurable: true,
        // });
        // obj.age = 12;// 无法修改
        // obj.age2 = 13;// 可以添加
        // Reflect.deleteProperty(obj, "age"); // 可以删除
        // log(obj.age);
        // log(obj.age2);// 可以添加

        Reflect.defineProperty(obj, "age", {
            value: 11,
            enumerable: true,
            writable: true,
            configurable: false,
        });
        obj.age = 12;// 可以修改
        obj.age2 = 13;// 可以添加
        Reflect.deleteProperty(obj, "age"); // 无法删除
        log(obj.age);
        log(obj.age2);// 可以添加



    </script>
</head>

<body>

</body>

</html>